The present invention is directed to communications systems and devices, and more particularly, to an apparatus and method for echo canceler coefficient update in communications systems and devices.
Echo cancelers are often used to suppress both acoustic-type echo (echoes resulting from feedback between a microphone and a closely situated speaker) and network-type echo (echoes caused by the network of communications links between users). Acoustic-type echo suppressers are typically used in mobile terminal (for example cellular telephone) handsets, mobile terminal hands-free devices, standard telephone handsets and standard telephone hands-free devices (for example speaker phones). Network-type echo suppressers are used in telephone networks, for example public switched telephone networks (PSTN), base stations and mobile switching centers (MSC).
An echo canceler has inputs for an echo-causing signal and an echo-containing signal. The echo-causing signal is often the signal supplied to a loudspeaker of the communications device. The echo-containing signal is typically a signal received at the microphone of the communications device including ambient noise, a desired voice from a user of the communications device, and an echo from the loudspeaker of the communications device.
Echo cancelers usually utilize a fixed Finite Impulse Response (FIR) filter and maintain a set of filter coefficients which, when convolved with samples of the echo-causing signal, provide an estimate of the echo portion for consecutive samples of the echo-containing signal. The samples of the echo portion estimate are subtracted from corresponding samples of the echo-containing signal, yielding an error signal as the echo suppressed output from the echo canceler.
In one echo canceler, used in Global System for Mobile Communications (GSM) mobile terminals, the error signal is fed back for use in updating the FIR filter coefficients. The filter coefficients are adapted constantly, but the update rate of the coefficients is slow to avoid divergence of the echo canceler. Divergence of the echo canceler occurs where the filter coefficients are changing to values which, when convolved with the echo-causing signal, are less representative of the echo portion of the echo-containing signal than previous filter coefficient values.
In another echo canceler, used as a network echo canceler in MSCs, a second, quickly-adapting FIR runs in parallel with a fixed FIR. The fixed FIR provides an echo-suppressed output, where the fixed FIR coefficients are used in providing the estimate of the echo portion of the echo-containing signal. A controller constantly adapts a second set of FIR coefficients for the quickly-adapting FIR on a sample per sample basis based on a quickly-adapting FIR echo-suppressed output. The quickly-adapting FIR provides the second echo-suppressed output using the second set of FIR coefficients. A fixed FIR energy reading is taken of the fixed FIR suppressed output over a time period of several seconds by the controller, and a second energy reading is taken of the second FIR suppressed output over the time period of several seconds by the controller, where the second set of FIR coefficients are updated as the fixed FIR coefficients where the second energy reading is less that the fixed FIR energy reading for the time period of several seconds. As the fixed FIR coefficients are only updated once over the time period of several seconds, useful updates to the second set of FIR coefficients are thrown away when followed by desired voice during the evaluation period, thus slowing the adaptation. Additionally, twice as much static RAM is required to hold the two sets of filter coefficients.